package cn.kgc.tangcco.service;

import cn.kgc.tangcco.model.ResponseText;
import cn.kgc.tangcco.pojo.Clazz;
import cn.kgc.tangcco.pojo.Student;
import cn.kgc.tangcco.vo.StudentVo;
import com.github.pagehelper.PageInfo;

import java.util.List;
import java.util.Map;

/**
 * @author 李昊哲
 * @Description
 * @create 2020/12/26 17:08
 */
public interface StudentService {
    /**
     * 模拟学生数据
     *
     * @param students 学生信息集合
     */
    public ResponseText add(List<Student> students);

    /**
     * 按条件查询学生
     *
     * @param paramMap
     * @return
     */
    public PageInfo<Student> query(Map<String, Object> paramMap);

    /**
     * 按条件查询学生
     *
     * @param paramMap
     * @return
     */
    public PageInfo<StudentVo> queryVo(Map<String, Object> paramMap);


    /**
     * 查询手机号是否存在
     *
     * @param mobile
     * @return
     */
    public ResponseText queryMobileExists(String mobile);

    /**
     * 按照ID批量删除数据
     *
     * @param ids id集合
     * @return
     */
    public ResponseText delelteStudent(List<Integer> ids);

    /**
     * 根据ID获取信息
     *
     * @param id
     * @return
     */
    public ResponseText<Student> getStudentById(Integer id);

    /**
     * 更新数据
     *
     * @param student
     * @return
     */
    public ResponseText updateStudent(Student student);

    /**
     * 班级内学生那女比例
     *
     * @param clazz 班级信息
     * @return
     */
    public List<StudentVo> queryCountGroupByGender(Clazz clazz);
}
